GnuPG und PGP
Grundlagen zu GnuPG und PGP
Einleitung
Jeder RegAcc muss mindestens einen Key bei DENIC hinterlegen.
Was ist GnuPG / PGP?
PGP (Pretty Good Privacy) / GnuPG (eine Open Source Open PGP Implementation) sind Programme, die es erlauben, E-Mails, Texte und Dateien zu signieren sowie zu verschlüsseln. Es gilt als sehr sicher und erlaubt daher eine sichere Kommunikation zwischen mehreren Parteien.
Unterstützte Versionen
DENIC unterstützt alle GnuPG und PGP Versionen.
Was sind Keys und wie sind Sie aufgebaut?
Ein Key besteht immer aus zwei Teilen:
- dem öffentlichen Schlüssel („Public Key“) und
- dem privaten Schlüssel („Private Key“).
Aufgrund des asymmetrischen Verschlüsselungsverfahrens hat jeder Benutzer zwei zusammengehörende Schlüssel (Public und Private Key). Aus dem gewählten Passwort bildet GnuPG bzw. PGP einen Hash-Wert – den sogenannten geheimen Schlüssel – aus dem wiederum der private Schlüsselteil generiert wird.
Mit dem privaten Schlüssel ist es unter anderem möglich, Nachrichten zu signieren und zu entschlüsseln.
Mit dem öffentlichen Schlüssel können Nachrichten verifiziert und verschlüsselt werden.
Jeder Key beinhaltet verschiedene Informationen, zum Beispiel:
Länge | Schlüssellänge des Keys, z.B. 2048 Bit |
Typ | Beispiel: DSA und ElGamal |
KeyID | Eindeutige ID des Schlüssels, zum Beispiel 0x00F555A |
Erstellungsdatum | Im Format yyyy-mm-dd |
Name | Beispiel: DENIC-1000002 Produktions-Kommunikations-Key |
Beispiel: example@denic.de | |
Fingerprint | Fingerabdruck des Keys, der in Verbindung mit der KeyID eine eindeutige Identifizierung ermöglicht |
Expire | falls vorhanden: Gültigkeitsdatum des Keys |
Sehen wir uns als Beispiel einen Key an:
|
In diesem Beispiel sind:
- Länge: 2048 Bit
- Typ: DSA (symbolisiert durch das "D" in 2048D; bei RSA-Keys stünde hier z.B. 2048R)
- KeyID: 0xF81AE61F
- Erstellungsdatum: 2001-12-11 (im Format YYYY-MM-DD)
- Name: Business Services
- E-Mail: example@denic.de
- Fingerprint: 4943 3AA7 6A85 306E 23A4 A1AC D4B9 6CF6 F81A E61F
- Expire: Der Key verfällt 2002-12-11
GnuPG / PGP speichern die Schlüssel im sogenannten Schlüsselbund ("Keyring") ab.
In der Regel besteht der Keyring aus den Dateien "pubring.pkr" und "secring.pkr" (PGP) bzw. pubring.gpg und secring.gpg in $HOME/.gnupg/ (GnuPG).
Master- und Kommunikations-Keys
DENIC unterscheidet zwischen zwei Arten von Schlüsseln:
- Master-Key
- Kommunikations-Key
Der Master-Key dient zur
- Signierung von E-Mails, um den Zugang zum Registrar Administration Interface (RAI) bei DENIC Business Services zu veranlassen
- Autorisierung von Änderungen an der hinterlegten RAI-Info-E-Mail-Adresse an die DENIC Benachrichtigungen über Änderungen am RegAcc-Profil sendet.
- Autorisierung bei der Bestellung zusätzlicher RegAccs/Kontingente
- Autorisierung vom Anlegen für Zugänge zu den Mitglieder-Webseiten
Der Master- und Kommunikations-Key dient zur
- Allgemeinen E-Mail-Kommunikation der Mitglieder mit DENIC
Funktion und Anforderungen an den Master-Key und Kommunikations-Key
Der Key dient zur Autorisierung und Identifizierung gegenüber DENIC eG bei der Auftragsbearbeitung und sonstiger E-Mail-Kommunikation. Jeder RegAcc muss mindestens einen Key bei DENIC hinterlegen.
- Jeder Key muss eindeutig sein. Ein bereits genutzter Key kann nicht erneut verwendet werden.
- Die Anzahl der erlaubten Keys ist nicht begrenzt
- Alle Keys müssen mit einer Gültigkeitsdauer versehen sein, die maximal 731 Tage betragen darf. Nach Ablauf der Gültigkeitsdauer wird der Key aus dem Keyring der DENIC gelöscht und kann nicht mehr verwendet werden.
- Als Schlüsselart muss DH/DSS, RSA, DSA oder DSA und Elgamal ausgewählt werden.
- Die Schlüssellänge muss mindestens 2048 Bit betragen.
- Die erlaubten Signaturalgorithmen für Aufträge sind:
- RIPEMD160withRSA
- RIPEMD160withECDSA
- RIPEMD256withRSA
- SHA256withDSA
- SHA256withECDSA
- SHA384withDSA
- SHA384withECDSA
- SHA512withDSA
- SHA512withECDSA
- SHA256withRSA
- SHA384withRSA
- SHA512withRSA
- Jeder Key sollte mit einer sicheren Passphrase versehen sein.
- DENIC empfiehlt, für jeden Key eine eindeutige Namensgebung bestehend aus RegAccId, RegAccName und ggf. Verwendungszweck zu wählen.
- Beispiel: DENIC-99995 DENIC eG
Aktivierung eines Keys
Ein neuer Key kann über RAI eingepflegt werden. Eine Aktivierung des Keys erfolgt innerhalb von 5 Minuten.
Expire eines Keys
Abgelaufene Keys werden aus dem DENIC-Keyring gelöscht und werden im RAI nicht mehr angezeigt.
Löschen eines Keys
Wenn Sie einen Key aus dem DENIC-Keyring entfernen möchten (zum Beispiel, weil der Key kompromittiert wurde), können Sie ihn jederzeit über das RAI aus dem DENIC-Keyring entfernen.
Schritt-für-Schritt -Erstellen eines Keys mit PGP
Diese Anleitung bezieht sich auf PGP-Version 9.9.1.
- Starten Sie PGP-Desktop.
- Wählen Sie aus dem Menü "Datei" die Option "Neuer PGP-Schlüsse"l
- Geben Sie den Namen der Person / Rolle ein, die den Key verwendet, sowie die entsprechende E-Mail-Adresse.
- Klicken Sie auf "Erweitert".
- Prüfen Sie, ob bei "Größe" mindestens 2048 angegeben ist.
- Klicken Sie bei "Ablaufdatum" auf das Datum und geben Sie ein Datum ein, welches maximal 731 Tage in der Zukunft liegt.
- Klicken Sie auf "OK" und im Anschluss auf "Weiter" und geben Sie nun ein sicheres Passwort ein.
- Nach einem Klick auf "Weiter" wird Ihr Schlüsselpaar erzeugt.
- Im Anschluss haben Sie nun noch die Möglichkeit Ihren Key auf einen öffentlichen Keyserver hochzuladen, sofern Sie das möchten.
- Klicken Sie im Anschluss mit der rechten Maustaste auf Ihren Key.
- Wählen Sie "Exportieren" aus.
- Wählen Sie einen Speicherort aus und stellen Sie sicher, dass die Option "Private(n) Schlüssel einschließen" ausgewählt ist.
- Speichern Sie die erzeugte Schüsseldatei an einem sicheren Ort.
HINWEIS |
Beachten Sie, dass die Schlüsseldatei auch den privaten Schlüssel enthält. Bewahren Sie den privaten Schlüssel sorgfältig auf, da dieser zum Signieren verwendet wird. |
Einbinden des Kommunikations-Keys über das Registrar Administration Interface (RAI)
- Ein neuer Kommunikations-Key wird im RegAcc-Profil über RAI eingepflegt.
- Detaillierte Informationen zum Thema RegAcc-Verwaltung und RAI sind in der folgenden Dokumentation beschrieben:
- DENIC-22: Verwaltungsschnittstelle RAI.
- Öffnen Sie die Schlüsseldatei mit einem Texteditor.
- Markieren und kopieren Sie nur den Bereich des öffentlichen Schlüssels.
- Fügen Sie den Textblock in RAI unter RegAccPGPKey ein und speichern Sie ab.
HINWEIS |
Sie können den Key nach 5 Minuten nutzen. |
Schritt-für-Schritt - Erstellen eines Keys mit GnuPG
Erstellen des Keys
Diese Anleitung bezieht sich auf GnuPG-Version 1.4.7. Erstellen Sie den Key wie folgt:
- Linux
Starten Sie eine Konsole (mittels ALT+F2 und geben Sie unter KDE konsole und unter GNOME gnome-terminal ein). - Windows
Öffnen Sie ein Kommando-Fenster (Start -> Ausführen -> cmd). - Tippen Sie "gpg --gen-key".
- Wählen Sie nun aus der entsprechenden Liste aus (DENIC empfiehlt entweder RSA und RSA oder DSA und Elgamal auszuwählen).
- Geben Sie nun die Schlüssellänge ein. Bitte geben Sie mindestens 2048 bis maximal 4096 ein.
- Geben Sie nun den Gültigkeitszeittraum für den Key ein:
- Sie können die Gültigkeit in Tagen eingeben (Geben Sie zum Beispiel 10 für 10 Tage ein) oder
- in Wochen (Geben Sie zum Beispiel 4w für 4 Wochen ein) oder
- in Monaten (Geben Sie zum Beispiel 12m für 12 Monate ein) oder
- in Jahren (Geben Sie zum Beispiel 2y für 2 Jahre ein).
HINWEIS
DENIC empfiehlt die maximale Gültigkeit von zwei Jahren einzugeben.
- Bestätigen Sie im Anschluss Ihre Eingabe.
- Geben Sie den Namen der Person / Rolle ein, die den Key verwendet sowie die entsprechende E-Mail-Adresse.
- Im Anschluss müssen Sie Ihre Eingabe noch einmal bestätigen.
- Geben Sie nun ein sicheres Passwort ein. Im Anschluss wird der Key erstellt.
- Sie können den Key nun exportieren in dem Sie "gpg -a --export <KeyID> > mykey.asc" tippen. Die KeyID finden Sie in der Zeile "pub", oben.
- Exportieren Sie auch den privaten Schlüssel mit "gpg -a -- export-secret-keys <KeyID> > mysecretkey.asc".
- Abschließend sollte das Schlüsselpaar an einem sicheren Ort abgelegt werden.
HINWEIS |
Beachten Sie, dass die Schlüsseldatei den privaten Schlüssel enthält. Bewahren Sie den privaten Teil sorgfältig auf, da dieser zum Signieren verwendet wird. |
Einbinden des Kommunikations-Keys über das Registrar Administration Interface (RAI)
- Ein neuer Kommunikations-Key wird im RegAcc-Profil über RAI eingepflegt.
- Detaillierte Informationen zum Thema RegAcc-Verwaltung und RAI sind in der folgenden Dokumentation beschrieben:
- DENIC-22: Verwaltungsschnittstelle RAI.
- Öffnen Sie die Schlüsseldatei mit einem Texteditor.
- Markieren und kopieren Sie nur den Bereich des öffentlichen Schlüssels.
- Fügen Sie den Textblock in RAI unter RegAccPGPKey ein und speichern Sie ab.
HINWEIS |
Sie können den Key nach 5 Minuten nutzen. |
Weiterführende Informationen zu GnuPG / PGP
Wichtige GnuPG-Befehle im Überblick
-s, --sign | Signatur erstellen |
--clearsign | Klartextsignatur erstellen |
-e, --encrypt | Datei / E-Mail verschlüsseln |
--decrypt [Datei] | Datei entschlüsseln |
--verify [Signatur] [Datei] | Signatur verifizieren |
--list-keys | Alle Schlüssel auflisten |
--list-public-keys | Alle öffentlichen Schlüssel auflisten |
--list-secrect-keys | Alle privaten Schlüssel auflisten |
--list-sigs | Alle Schlüssel nebst Signatur auflisten |
--check-sigs | Wie --list-sigs, jedoch mit Verifizierung der Signaturen |
--fingerprint | Wie --list-keys, jedoch mit Ausgabe des Fingerprints |
--gen-key | Ein neues Schlüsselpaar erstellen |
--delete-key | Schlüssel aus dem Keyring entfernen |
--delete-secret-key | Public und Private Key aus dem Keyring entfernen |
--export [KeyID] | Öffentlichen Schlüssel exportieren |
--export-secret-keys [KeyID] | Privaten Schlüssel exportieren |
--import | Public Key in den Keyring importieren |
-a, --armor | Ausgabe in ‚ASCII-armor’ |
-o, --output [Datei] | Ausgabe in Datei umleiten |
-o [Datei] –a –export [KeyID] | Public-Key als ASCII-armor in Datei ausgeben |
Relevante RFCs zu GnuPG / PGP
RFC1321 | The MD5 Message-Digest Algorithm |
RFC2104 | HMAC: Keyed-Hashing for Message Authentication |
RFC3156 | MIME Security with OpenPGP |
RFC4880 | OpenPGP Message Format |